よく分かる!iOS アプリ開発に必要な証明書ファイルの作成方法 2015年版
(2015/12/02 20:49 冒頭の一部記述を修正しました)
朝のジャスミン茶は欠かせない田宮です。
今日は、証明書周りの手順について解説させていただきます。
証明書周りは一度やるとあとは暫く触れる事がないので、備忘も兼ねて書かせていただきます。本記事では、証明書作成要求(CSR)の作成⇒開発用証明書(CER)の作成⇒Macに開発用証明書(CER)を登録までを記載させて頂きます。
本記事は、2013年の以下の記事を元に、最新の環境に合わせて変更したものになります!
よく分かる!iOS アプリ開発に必要な証明書ファイルの作成方法 | アドカレ2013 : SP #4 | Developers.IO
証明書とは
iOS アプリを App Store に出すために、アプリ配布用の証明書というものが必要です。
証明書が必要な理由
配布用証明書は、以下の目的のために存在します。
- アプリを誰が作ったか判別するため
- アプリが改ざんされていないことを判別するため
証明書作成のプロセスの中で、公開鍵と秘密鍵を生成する必要があります。秘密鍵は、Macのキーチェーンにのみ保管され、秘密鍵を持っているユーザーのみが、そのユーザー本人としてアプリをAppleに提出できることを担保します。
ここから先は、証明書を作成する方法について解説していきます。
1.キーチェーンアクセスから証明書署名要求(CSR)の作成
「Apple Developer Program」の「Certificates,Identifiers & Profiles」から早速作ってみましょう!と言う前に Apple Developer ProgramのCertificatesから証明書ファイルを作成する場合は、証明書署名要求(CSR)が必要になります。その為、最初にMacのキーチェーンアクセスから証明書署名要求(CSR)を作成する必要があります。
1-1.キーチェーンアクセスを起動
Launchpad からキーチェーンアクセスを起動させてみます。
1-2.認証局に証明書を要求を選択
証明書署名要求(CSR)を作成するためには、キーチェーンアクセスのメニューから以下を選択します。 キーチェーンアクセス⇒証明書アシスタント⇒認証局に証明書を要求
1-3.証明書情報を入力
証明書情報の入力を行います
- ユーザーのメールアドレス:Apple Developer Programに登録したメールアドレス
- 通称:Apple Developer Programに登録した名称
- CAのメールアドレス:不要
- 鍵ペア情報を指定:チェック必須
- ディスクに保存を選択
※ 上記「通称」については、開発していると証明書が増えてくるので、命名規約を作り、分かり易い通称をつけておいた方が良いと思います。
1-4.保存先を選択
証明書署名要求(CSR)の保存先を選択します。
- 名前:CertificateSigningRequest.certSigningRequest(デフォルト)
- タグ:空
- 場所:証明書の保存先
1-5.鍵ペア情報
鍵ペア情報を選択します。
- 鍵のサイズ:2048ビットを選択
- アルゴリズム:RSAを選択
※鍵のサイズが2048ビットでなければCSRは却下されます。
2.iOS Developer programから証明書ファイルを作成
証明書署名要求(CSR)が上記の手順で作成できました。次は、Apple Developer Programから証明書を作成します。
2-1.Apple Developer Centerへログイン
Member Center を表示します。
2-2.iOS Apps の Certificatesをクリック
Certificatesをクリックします。
2-3.証明書ファイルの追加
左メニューの Certificates を選択して「+」ボタンを押下します。
2-4.証明書の種類を選択
- Development:開発用
- iOS App Development:通常時
- Apple Push Notification service SSL (Sandbox):通知を利用する場合
- Production:本番用
- App Store and Ad Hoc:通常時
- Apple Push Notification service SSL (Production):通知を利用する場合
- Pass Type ID Certificate:PassBook用
- Website Push ID Certificate:Safari通知用
-
WatchKit Services Certificate:WatchKitサービスとサーバを繋ぐためのもの
- VoIP Services Certificate:VoIPサービス用
- Apple Pay Certificate:Apple Pay用
開発と本番やPush通知を使う場合等によって選択する内容が異なります。今回は、開発用かつ通知を使わない場合で進めます。
2-5.証明書作成要求(CSR)の確認
証明書作成要求(CSR)の確認画面になります。特に問題なければ「Continue」を押下してください。
2-6.証明書作成要求(CSR)の選択
「Choose File...」ボタンを押下して、先ほど作成した証明書作成要求(CSR)を選択します。
2-7.証明書作成要求(CSR)のジェネレート
証明書作成要求(CSR)が選択されたら、「Generate」ボタンを押下します。
2-8.証明書ファイルの作成完了画面
証明書ファイルが作成されたことを確認します。
2-9.開発用証明書(CER)のダウンロード
作成された開発用証明書(CER)のダウンロードを行います。
3.Macに開発用証明書(CER)を登録
最後は、いよいよ Mac に開発用証明書(CER)の登録を行います。
3-1.ダウンロードした開発用証明書(CER)を選択
先ほどダウンロードした、拡張子が cer のファイルをダブルクリックし、キーチェーンアクセスに証明書が登録を行います。
3-2.「"システムルート"キーチェーンは変更できません。」が表示される場合
ファイルをダブルクリックした際、以下のメッセージが表示されることがあります
この事象が発生している場合は、キーチェーンアクセスのメニューのファイル⇒読み込むを選択し、開発用証明書(CER)である、拡張子 cer のファイルを選択すると読み込めます。
3-3.キーチェーンアクセスに読み込めているか確認
読み込まれた、開発用証明書ファイルは、ログインキーチェーンに登録されます。
まとめ
証明書系の作業は、一度やってしまうとほとんど触ることないのですが、また最初からやろうとすると、色々検索して調べながらやったりと結構ハマりがちだと思います。今回の手順は2015年12月時点の内容になります。今後細かい手順やコンソール画面のUIが変わってくる可能性もありますのでご注意ください。
参考
Appleドキュメント:iOSチーム管理ガイド